#pragma once
/*--------------------------------------------------------------------------------
 * Adaptive Intelligence - Foundation Framework Class Library
 * Version 2.00
 * 
 * Server Information Structure
 *      Provides a managed version of the SERVER_INFO_101 structure.
 *------------------------------------------------------------------------------*/

/*--------------------------------------------------------------------------------
 * System Imports
 *------------------------------------------------------------------------------*/
#include "stdafx.h"
#include "ServerType.h"
#include "ServerPlatformType.h"

using namespace System;
using namespace Adaptive;
using namespace Adaptive::Win32;
using namespace Adaptive::Foundation;

namespace Adaptive
{
	namespace Win32
	{
		namespace Network
		{
			/// <summary>
			/// Provides a managed version of the <see cref="SERVER_INFO_101"/> structure.
			/// </summary>
			public value struct ServerInformation
			{
			public:
				/// <summary>
				/// Specifies the information level to use for platform-specific information.
				/// </summary>
				ServerPlatformType	PlatformId;
				/// <summary>
				/// A string specifying the name of a server.
				/// </summary>
				String^				ServerName;
				/// <summary>
				/// Specifies, in the least significant 4 bits of the byte, the major release version number of the operating system.
				/// </summary>
				int					MajorVersion;
				/// <summary>
				/// Specifies the minor release version number of the operating system.
				/// </summary>
				int					MinorVersion;
				/// <summary>
				/// Specifies the type of software the computer is running.
				/// </summary>
				ServerType			ServerType;
				/// <summary>
				/// A string specifying a comment describing the server. The comment can be <b>null</b> or empty.
				/// </summary>
				String^				Comment;
			};
		}
	}
}